1. Field of the Invention
The present invention relates to an information processing system, an information processing apparatus, and an information processing method, and a computer program. More specifically, the present invention relates to an information processing system, an information processing apparatus, an information processing method, and a computer program capable of realizing the configuration in which map information, image data held in an information processing apparatus, such as a user's PC or digital camera, and the like are displayed together.
2. Description of the Related Art
In recent years, network communications through Internet or the like are wide spread and various services are provided through the network. A user may acquire various kinds of information from a server, a computer, or the like connected to the network.
For example, there is a map information providing service as one of the services through a network. The map information providing service refers to a service in which a request of map display of, for example, a specific area is transmitted from a user terminal, such as a computer or a portable terminal, connected to a network to a map information providing server and the map information providing server having received the request acquires a map of the area corresponding to the request and then transmits the acquired map to the user terminal. There is also a service that provides a satellite photograph other than a map.
In addition to such map information service, there is a service that allows data that a user holds, for example, image data photographed in travel places to be displayed together at the positions on a map provided by a map providing server.
For example, as shown in FIG. 1, a marker 12 is set on the position corresponding to a place, to which a user has traveled, on a map 10 provided by a map providing server. The marker 12 is a marker for local image pop-up.
An image 11 corresponding to photographs taken by the user is displayed by designating (for example, clicking) each marker. When each of the markers 12a to 12n is clicked, local image data corresponding to each position, for example, the user's image (for example, photograph taken during travel) 11 pops up.
In order to realize such information display, it is necessary to create a display structure description file, which describes the configuration for displaying map data, position information of a marker, and image information such as user's photographs according to a predetermined rule, for example, an HTML file. A user transmits to a service providing server, which provides a service for creating the display data (HTML file), image information such as photographs that the user holds and photographing position (for example, latitude and longitude information) and photographing date and time information corresponding to the image information, the service providing server creates the HTML file on the basis of the transmitted information, and the user acquires the HTML file.
Moreover, in order to allow a map, satellite photographs, and the like, which are shown in FIG. 1, to be displayed together with user's local images so as to be linked to each other, for example, an AJAX (Asynchronous Java (registered trademark) Script+XML) technique is used. The AJAX technique uses an HTTP communication function of Java (registered trademark) script provided in a web browser. The AJAX technique is an interactive web application technique of enabling processing, such as updating of display data, by performing transmission/reception of XML-format data to/from a server without reloading a web page. In addition, the AJAX technique is mainly applied in a network service operating on an Internet browser.
Thus, by applying the AJAX technique, for example, it becomes possible to display an image, such as a user's local photograph, in combination with map or satellite photograph information provided by a map information providing server.
For example, a map information providing server runs business in which the map information providing server enters into license agreements, which grants a right to create an HTML file or an XML file using API (application program interface) for realizing the display data described with reference to FIG. 1, with an external server (service providing server) and then allows utilization of the API of the map information providing server on the basis of a result of checking whether or not the created file is a file created by the licensed service providing server such that the data display service shown in FIG. 1 may be used.
Specifically, the map information providing server issues an API (application program interface) key to the service providing server which is granted a right to create an HTML file or XML file, such that the key information is written in the HTML file or XML file created by the service providing server. Then, only when the key information is confirmed, it is allowed to use the API of the map information providing server, such that the data display processing shown in FIG. 1 is performed. For example, in the case when an HTML file stored in a local place on a personal computer is used, the utilization of the API of the map information providing server is not permitted by the above processing. Accordingly, the data display shown in FIG. 1, that is, an operation of causing a local image to pop up on a map is not possible, and thus service providing based on a license is realized.
Hereinafter, general sequences for executing information display processing on the basis of map information provided by a map information providing server and an HTML file provided by a service providing server will be described with reference to FIG. 2.
A client (user terminal) 31 that executes display of data described with reference to FIG. 1, a service providing server 32 that creates an HTML file, and a map information providing server 33 that provides map information or satellite photograph information are shown from the left side in FIG. 2.
First, under the assumption that the service is executed, the map information providing server 33 gives to the service providing server 32 a permission to create an HTML file for information display using a map, which is provided by the map information providing server 33, and provide the created HTML file to the client. For example, a service during a predetermined period is permitted by license agreements. In this processing, in step S11, the map information providing server 33 creates a key for license and provides the key to the service providing server 32.
Then, in step S12, the client (user terminal) 31 that desires to execute the data display described with reference to FIG. 1 transmits, that is, uploads to a service providing server 12 image data stored in the user terminal, that is, image data, such as photographs taken at tourist spots, and photographing position and photographing date and time information as attribute information of the image data.
In step S13, the service providing server 32 creates an HTML file for data display. This HTML file is a file applied to the data display described above with reference to FIG. 1, and key information received from the map information providing server 33 and codes for utilizing the API provided by the map information providing server 33 are described in the HTML file.
FIG. 3 illustrates the configuration of a part of the HTML file created by the service providing server 32. Key information 52 received from the map information providing server 33 and codes (Java (registered trademark) Script) for utilizing the API provided by the map information providing server 33 are described in a data part 51.
Referring back to FIG. 2, the explanation on the processing sequences continues. In step S14, the service providing server 32 transmits the created HTML file to the client 31. Then, in step S15, the client 31 executes API utilization request with respect to the map information providing server 33 on the basis of the codes (Java (registered trademark) script) for utilizing the API included in the HTML file received from the service providing server 32. In this processing request, position information for indicating the marker position set on a map and the key information 52 included in the data part 51 shown in FIG. 3 are included.
In step S16, the map information providing server 33 verifies the key information in response to the request from the client 31. That is, the map information providing server 33 verifies whether or not the request from the client 31 is a map utilization request based on the HTML file created by the service providing server licensed by the map information providing server 33. Specifically, the map information providing server 33 verifies whether or not effective key information, which is provided to the service providing server licensed by the map information providing server 33, is included in the request from the user terminal. If it is verified that the effective key information is not included, the service stops.
On the other hand, if it is verified that the effective key information is included, in step S17, map data that allows data processing using the API of the map information providing server 33 is provided to the client 31. That is, the map data is map information in which a marker causing a local image to be presented on the map is set.
In step S18, the client 31 displays a map using a browser function, for example. On the map, the markers described above with reference to FIG. 1 are set. In step S19, a marker operation, such as an operation of clicking on a marker, is executed. Then, in step S20, an image acquisition request is transmitted to the service providing server 32, and then in step S21, an image corresponding to the marker is acquired from the service providing server 32. Then, in step S22, an image that pops up on the map is displayed on the user terminal.
The displayed image is the image data that the client 31 transmitted, that is, uploaded to the service providing server 32 in previous step S12.
By executing the processing according to the sequences described above, the client (user terminal) 31 may cause a local image stored in the user terminal to be displayed on the basis of an operation on the marker, which is set at the corresponding position on a map, using the map provided by the map information providing server 33.
That is, as shown in FIG. 4, the client 31 may cause a map 70, on which markers 71a to 71n provided by the map information providing server 33 are set, to be displayed on a display unit of the client 31. In addition, the client 31 may call an image 72, which is transmitted to the service providing server 32 and is then stored therein, by means of an operation of the markers 71a to 71n so as to display the image 72 on a map.
However, as is apparent from the processing sequences described above, in order to use the service, it is necessary for the client (user terminal) 31 to transmit, that is, upload an image stored in the user terminal to the service providing server 32. This, in the case of uploading a user's image file to a service providing server, a load applied to the client (user terminal) and a load applied to the service providing server increase, which causes delay of processing. Moreover, there is a chance that the image file, which is personal information, will leak.